package com.example.backend.dto;

import com.example.backend.domain.enums.NotificationChannel;
import com.example.backend.domain.enums.NotificationPriority;
import com.example.backend.domain.enums.NotificationStatus;
import com.example.backend.domain.enums.NotificationType;
import lombok.Data;

import java.time.Instant;

/**
 * 通知筛选条件DTO
 */
@Data
public class NotificationFilter {
    private Long userId;
    private NotificationType type;
    private NotificationChannel channel;
    private NotificationStatus status;
    private NotificationPriority priority;
    private String keyword;
    private Instant createdFrom;
    private Instant createdTo;
    private Instant readFrom;
    private Instant readTo;
    private Boolean hasActionUrl;
    private String sortBy = "createdAt";
    private String sortDirection = "DESC";
    private Integer page = 0;
    private Integer size = 20;
}
